package com.kk.docker.config;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

import java.text.SimpleDateFormat;
import java.util.Date;

@Configuration
@EnableSwagger2
public class SwaggerConfig {
    @Value("${spring.swagger2.enabled}")
    private Boolean enabled;

    @Bean
    public Docket createRestApi() {
        return new Docket (DocumentationType.SWAGGER_2)
                .apiInfo (apiInfo ( ))
                .enable (enabled)
                .select ( )
                .apis (RequestHandlerSelectors.basePackage ("com.kk.docker")) //你自己的package
                .paths (PathSelectors.any ( ))
                .build ( );
    }

    public ApiInfo apiInfo() {
        return new ApiInfoBuilder ( )
                .title ("java 学习 docker" + "\t" + new SimpleDateFormat ("yyyy-MM-dd").format (new Date ( )))
                .description ("docker-compose")
                .version ("1.0")
                .termsOfServiceUrl ("https://www.mykkto.cn")
                .build ( );
    }
}
